1. Field of the Invention
The present invention relates to an optical disk reproduction system, and more particularly, to an apparatus and method for error-correction-decoding in an optical disk reproduction system.
2. Description of the Related Art
A digital versatile disk or a digital video disk (DVD) is a storing medium which realizes higher storage capacity than, while maintaining most characteristics of, a compact disk (CD). The DVD can store moving image data with high resolution, to thereby supply various moving images such as those found in a motion picture. The DVD player can therefore be considered analogous to a video cassette player. Also, the DVD can be used as an auxiliary memory in an information processing system such as a computer for storing large amounts of data.
A typical DVD system for reproducing information stored in the DVD is shown in FIG. 7. Referring to FIG. 7, data of a disk 210 read out by a pickup 212 is amplified by an RF amplifier and equalizer 214 and is concurrently equalized to compensate for deterioration of signals. A data slicer 216 reproduces digital data from an analog signal output by the RF amplifier and equalizer 214. A synchronization detector 218 receives the digital data and detects a synchronization signal of the data. An eight-to-fifteen modulation (EFM) demodulator 220 EFM-demodulates the digital data in accordance with the synchronization signal, and stores the demodulated signal in a data memory 232. An error correction code (ECC) decoder 222 error-correction-decodes the demodulated signal stored in the memory in a unit of an ECC block, to thereby output the decoded signals.
If the DVD system is used to reproduce image data, the decoded signal of the ECC decoder 222 is output to an MPEG-2 decoder 224. The MPEG-2 decoder 224 decodes image data coded according to the MPEG-2 standard, to thereby output the decoded signal to an image display apparatus such as the television. Meanwhile, if the DVD system is used in connection with a DVD-ROM system for reproducing data, the decoded signal of the ECC decoder 222 is output to a host interface 226, and the host interface 226 transmits the received data to an information processing system such as a computer (PC).
When the DVD system is used as a DVD-ROM system, preferably, the DVD-ROM system must operate at high speed to reduce data access time in the computer. But, in the system of FIG. 7, the decoding operation of the ECC decoder 222 requires a lot of time. Accordingly, the time for error correction decoding must be shortened as much as possible, for example, by operating the DVD-ROM system at high speed, to reduce the access time of the DVD.
The error correction decoding of the conventional DVD system will be described with reference to FIGS. 8 through 10. Information data of the DVD system is double-coded by a Reed-Solomon code in each error correction code (ECC) block to increase reliability of the data. FIG. 8 shows the structure of the ECC block in the DVD. In each ECC block, the information data of 172 bytes is inner-coded by adding internal parity data of 10 bytes, and 192 inner-coded codewords are added to 16 rows of outer parity data, to be outer-coded. Thus, the double-coded data of 182xc3x97208 bytes form one ECC block. Thus, the one ECC block includes an information region of 172xc3x97192 bytes, an inner parity (PI) data region of 10xc3x97192 bytes, and an outer parity (PO) data region of 172xc3x9716 bytes.
In general, when a parity is added to k message symbols and thus (n, k, d+1) Reed-Solomon code coded by n symbols is used, d/2 errors or d eraser can be corrected. Here, the error denotes the case in which a position and a value are unknown, and the eraser denotes the case in which the position is known and the value is unknown. Thus, in the codeword coded by (182, 172, 11) Reed-Solomon code as shown in FIG. 8, five errors or ten erasers can be corrected. Also, in the codeword coded by (208, 192, 17) Reed-Solomon code, eight errors or sixteen erasers can be corrected.
In general, if the error correction decoding with respect to the ECC block is performed, the error is corrected using the PI data, and then the error is corrected using the PO data. Also, in order to increase the error correction probability, the correction can be repeated using the PI or PO data.
An error correction decoding method with respect to the ECC block will be briefly described. A xe2x80x9csyndromexe2x80x9d with respect to EFM-decoded data stored in a data memory is calculated, to check whether there is an error or not. Then, an eraser position formula required for correcting the eraser is obtained, and the eraser position formula is multiplied by the syndrome formula, to obtain a modified syndrome formula. The error position formula and the error value estimation formula are calculated by a Euclidean algorithm or a Barlekamp algorithm, using the syndrome formula, the eraser position formula and the modified syndrome formula. Also, the position in which an error is generated is calculated by using the error position formula, and the error value is calculated using the error position formula and the error estimation formula. At this time, it is determined whether the error of each of the codewords can be corrected, to thereby store the determined result as a flag. Finally, the error in the data is corrected according to the error position and the error value.
FIGS. 9 and 10 show a method of operating the data memory in a conventional optical disk reproducing apparatus. The data memory is divided into three parts. Data of one EFM-demodulated ECC block is recorded in the A-region. While the ECC block data recorded in the A-region is ECC-decoded, the other ECC block data is EFM-demodulated to be recorded in the B-region of the data memory. Also, while the ECC block data of the A-region in which ECC decoding is completed is output, the ECC block of the B-region is ECC-decoded and the other ECC block data is EFM-demodulated, to be recorded in the C-region of the data memory. While the ECC block data of the B-region in which the ECC decoding is completed is output, the ECC block of the C-region is ECC-decoded and the other ECC block data is EFM-demodulated, to be recorded in the A-region of the data memory.
In order to reduce the decoding time in the error correction decoding apparatus, in the error correcting apparatus of U.S. Pat. No. 5,570,378 written by Inoue Sadayuki et al., a method of using a higher clock frequency for an error value calculator having increased processing capability is disclosed. However, in the above ECC decoding process, the access time for a data memory 232 as well as the operation speed have effects on the decoding time.
In the process of ECC decoding, the data memory is accessed when the syndrome is calculated and errors are corrected. As shown in FIG. 8, if ECC block data is inner-coded by (182, 172, 11) Reed-Solomon code and outer-coded by (208, 192, 17) Reed-Solomon code, the data memory is accessed 37,856 (=182xc3x97208) times during the process of calculating the syndrome. Also, since an error of 5 per codeword can be corrected in final correction, the data memory 232 is accessed a maximum 2,028 (=5xc3x972xc3x97208) times to read and record during error correction. Thus, if the error is corrected using PI data, the data memory is accessed a maximum 40,768 (=37,856+2,028) times. If the eraser instead of the error is corrected, the number of accesses of the data memory for correction is greater.
The access time for the data memory can be reduced by increasing a clock frequency. But, since there is a limit to the operation frequency of the data memory including a DRAM, there is a limit to the amount the access speed of the memory can be increased.
To solve the above problem, it is an objective of the present invention to provide an optical disk reproducing system for calculating syndromes for each codeword to set an eraser flag, during EFM demodulation, and performing error-correction-coding using the eraser flag after completion of EFM-demodulation, to reduce the access time for a data memory in performing error correction and thus reduce the time of error correction.
It is another objective of the present invention to provide a method for EFM demodulation and error correction of an optical disk reproducing system calculating syndromes for each codeword to set an eraser flag and performing error-correction-coding using the eraser flag after completion of EFM-demodulation.
Accordingly, to achieve the first objective, there is provided an optical disk reproducing system reading signals stored in the optical disk, restoring EFM signals, demodulating the EFM signals to restore predetermined error correction block double-coded by coding a first predetermined number of messages each having a second predetermined number of symbols to a first plurality of codewords, using first parity data and to a second plurality of codewords using second parity data in the direction vertical to coding by the first parity data, and error-correction-decoding in a unit of error correction block. The system includes a data memory for storing the EFM signals and the EFM-demodulated signals in the unit of an error correction block. An EFM demodulation and syndrome calculator EFM-demodulates the EFM signals to output the EFM-demodulated signals to the data memory, and calculates syndromes of the EFM-demodulated signals in the unit of the first codeword and outputs a flag indicating whether there is an error. A flag memory stores the first predetermined number of flags with respect to each of the first predetermined number of the first codewords. An error corrector error-correction-decodes the EFM-demodulated signal stored in the data memory in the unit of an error correction block based on the flags stored in the flag memory.
To achieve the second objective, there is provided a method for EFM demodulation and error correction decoding of an optical disk reproducing system restoring EFM-demodulated EFM signals, demodulating the EFM signals to restore predetermined error correction block double-coded by coding a first predetermined number of messages each having a second predetermined number of symbols to a first plurality of codewords using first parity data and to a second plurality of codewords using second parity data in the direction vertical to coding by the first parity data, and error-correction-decoding in a unit of error correction block. The method includes the steps of EFM-demodulating the EFM signals and calculating syndromes of the EFM-demodulated signal in a unit of the first codeword to determine whether there is an error. A first flag is set when there is an error. An error-correction-decoding of the EFM-demodulated signal is performed in a unit of the error correction block, using the first flag for the first plurality of codewords.